home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / pascal / pull20.zip / PULL20.DOC < prev    next >
Text File  |  1988-01-11  |  43KB  |  860 lines

  1.                                                         January 12, 1988
  2.  
  3.                           MULTI-LEVEL PULL-DOWN MENUS
  4.                                   Version 2.0
  5.                           (c) 1987,1988 James H. LeMay
  6.  
  7.         PURPOSE:
  8.  
  9.         This utility creates incredibly quick multi-level pull-down 
  10.         menus  as units for Turbo Pascal 4.0 programs for ALL IBM 
  11.         compatibles, including PS/2 and 3270 PC on any video page or any 
  12.         text mode.  It features:
  13.  
  14.               - Work window(s) and complete interface for menus
  15.               - Pull-down menus with 5 menu modes and 7 line modes
  16. |             - Pull-down file directory
  17.               - Highlighted command letters
  18.               - Unlimited levels of submenus
  19. |             - Unlimited data entry windows for 9 types of data
  20.               - Data entry for the work window(s)
  21.               - Automatic NumLock for numerical data entry
  22.               - Right or left justification for data entry
  23.               - Error messages for invalid data entries
  24.               - Error messages for data entries out of range
  25.               - Allowance for null entries on text data entry
  26.               - Automatic and override configuration for sizes and
  27.                   locations for easier development
  28.               - Operation by cursor keys or command keys
  29.               - Pull/Pop between work window and nested submenu(s)
  30.               - Programmable control of pull and pop sequences
  31.               - Full system of self-titled help windows
  32.               - Message lines for prompts and processing
  33.               - Full working shell for user development
  34.               - Can be fully configured by the user including
  35.                   add-on features though units.
  36.  
  37.         They work on MDA, CGA, EGA, MCGA, VGA, 8514/A adapters in any 
  38.         column mode (40/80/etc.).  These procedures use the quick screen 
  39.         writing procedures of QWIK40A.TPU and the multi-level window 
  40.         procedures of WNDW40.TPU.
  41.  
  42.  
  43.         TEST DRIVE:
  44.  
  45.         Compile and run the program PULLDEMO.PAS to get a feeling for 
  46.         features and speed.  Be sure to use the Help function key "F1" 
  47.         everywhere for context-sensitive explanations.
  48.  
  49.         Be sure to copy QWIK40A.TPU, WNDW40.TPU, and PULL20.TPU to 
  50.         QWIK.TPU, WNDW.TPU, and PULL.TPU, respectively, before 
  51.         compiling.
  52.             
  53.         WNDW40.ARC and QWIK40.ARC are not included and have more 
  54.         documentation.  The demo is very similar to the TP4 environment.  
  55.         The operation should be intuitive.  If not, then I didn't do a 
  56.         very good job.
  57.  
  58.  
  59.         FILES:
  60.  
  61.         In this version, PULL20.ARC contains:
  62.  
  63.            !read   .me!:  File that insists you get a copy of                   
  64.                           WNDW40.ARC and QWIK40.ARC for further                   
  65.                           documentation.
  66.            Qwik40a .tpu:  Unit from QWIK40.ARC - comprehensive quick 
  67.                           screen writing utilities.
  68.            WndwVars.tpu:  Unit from WNDW40.ARC - WNDW variables.
  69.            Wndw40  .tpu:  Unit from WNDW40.ARC - multi-level windows.
  70.            Pull20  .doc:  This document.
  71.            PullVars.tpu:  Just interface for PULLVARS.TPU.
  72.            PullVars.tpu:  Variables used in PULL20.TPU.
  73.            Pull20- .pas:  Just interface for PULL20.PAS.
  74.            Pull20  .tpu:  Unit for your programs to use the pull-down 
  75.                           menus including data entry procedures.
  76.            PullDir-.pas:  Just interface for PULLDIR.PAS.
  77.            PullDir .tpu:  Unit for a pull-down file directory.
  78.            PullStat.pas:  Data to configure the menus.
  79.            PullProc.pas:  Procedures and Data Entry variables to be 
  80.                           executed in the menus including global keys.
  81.            PullWork.pas:  Procedures for the main work window(s).
  82.            PullDemo.pas:  Fully functional working demo.
  83.            License .arc:  ARC file containing license agreements.
  84.  
  85.  
  86.         IMPROVEMENTS:
  87.  
  88.         In this version there are several improvements over PULL15:
  89. |         . Converted to TP4 and incorporated QWIK40 and WNDW40.
  90. |         . Added pull-down directory with path and mask.
  91. |         . Added global keys like Alt-F and Alt-X in PULLSTAT.PAS.
  92. |         . Help windows disappear at any any keystroke and applies
  93. |             that key to the program.
  94. |         . Eliminated PULLUSER.INC and instead allow access to user 
  95. |             windows direct through PullProc.Process.
  96. |         . Menu partitions now use Wndw.BrdrRec.
  97. |         . Added TypeOfDataTypes Word and LongInt.
  98. |         . Added "ClearScreen" option in InitPull.
  99.  
  100.  
  101.         SHAREWARE:
  102.  
  103.         Due to the lack of participation and expense, I have decided to 
  104.         abandon the Teamware concept and instead make them into ShareWare.  
  105.         The cost may range from $9 to $53 depending on your application.  
  106.         I do enjoy assisting others in their programming, but lack of 
  107.         reimbursement is expensive for me!  Please help out.  See the 
  108.         STATMENT.LIC in LICENSE.ARC for details.  If the response will let 
  109.         me break even, I will continue support.
  110.  
  111.  
  112.         DEFINITIONS:
  113.               
  114.         So you can understand the program identifiers and this document, 
  115.         here's the definitions I'll use:
  116.               
  117.            Work window - The working window of the application program.
  118.            Top menu - The menu always shown (usually in row 1 or 2).
  119.            Main menu - The first menu pulled from the top menu.
  120.            Submenu - All subsequent menus pulled after the main menu.
  121.            Line - A row of text.
  122.            Menu - A list of selectable lines.
  123.            Window - Not a menu.
  124.            Data entry window - window for entering data into the
  125.                                application program.
  126.            Selection - A line selected in a menu with a CR.
  127.            "HiLited" - A line pointed at in a menu.
  128.            Message line - The bottom row to display key helps or
  129.                           processing status.
  130.            Error message - a short message for data out of range.
  131.            Link - A menu line showing a symbol (three-bar or dot) that 
  132.                   pulls another menu or window.  The symbol is also on 
  133.                   the same side where it is pulled.
  134.            PullDown - pulls menus down to the previous level.
  135.            Pop - removes menus and returns to the work window.
  136.                                       
  137.                                       
  138.         BASIC OPERATION:
  139.  
  140.         I'll just put a few words here just in case you may have missed 
  141.         some of the capabilities in the demo.
  142.  
  143.          . Status Line - Row 1 just holds the title of this program.  It 
  144.            can be used to for optional status info.
  145.  
  146.          . Top Menu Line - To access the top menu line, press F10 at any 
  147.            time.  The exceptions are when the Help window or Error 
  148.            messages are displayed.  The "/" key does the same thing 
  149.            except it is considered data in text data entry windows.
  150.  
  151.          . Main Menu - To access a main menu, press RETURN while the top 
  152.            menu is highlighted.
  153.  
  154.          . Submenu - To access a submenu, press RETURN when the HiLite 
  155.            is at a menu line with the three-bar symbol (which looks like 
  156.            a menu).
  157.  
  158.          . Data Entry Window - To access a data entry (pronounced "dot-
  159.            uh" entry?) window, press RETURN when the HiLite is at a menu 
  160.            line with a small dot symbol.  Pressing RETURN again will 
  161.            exit the window.  You can clear any data entered by pressing 
  162.            ESC which also removes the window.
  163.  
  164.          . Numerical Data Entry - Depending on the type of data, (byte, 
  165.            integer, etc.) only the valid characters can be typed in. 
  166.            Backspace can be used as well.  The "NumLock" is automatic 
  167.            and is interactive.  After return is pressed, the data is 
  168.            checked for validity (b